package com.itheima.api.collection.demo05;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class CollectionDemo01 {

    /**
     * 需求：使用Collection集合存储3个学生对象，并遍历
     *
     * 步骤：
     *
     * 1. 创建一个学生类
     * 2. 创建3个学生对象
     * 3. 创建集合对象
     * 4. 把3个学生对象添加到集合中
     * 5. 遍历集合
     *
     */
    public static void main(String[] args) {

        //  创建3个学生对象
        Student s1 = new Student("张三" , 23) ;
        Student s2 = new Student("刘亦菲" , 18) ;
        Student s3 = new Student("胡歌" , 49) ;

        // 创建集合对象
        Collection<Student> col = new ArrayList<Student>() ;

        // 把3个学生对象添加到集合中
        col.add(s1) ;
        col.add(s2) ;
        col.add(s3) ;

        // 遍历集合
        // 1. 迭代器进行遍历
        Iterator<Student> iterator = col.iterator();
        while(iterator.hasNext()) {
            Student student = iterator.next();

            // 存在问题，因为每一次调用next方法，迭代器中的指针都会向后移动一位
//            System.out.println(iterator.next().getName() + "-----" + iterator.next().getAge());
            System.out.println(student.getName() + "----" + student.getAge());
        }

        System.out.println("-----------------------------------------------------");

        // 2. 使用增强for循环进行遍历
        for(Student s : col) {
            System.out.println(s.getName() + "-------" + s.getAge());
        }

        System.out.println("-----------------------------------------------------");

        // 3. 使用forEach方法进行遍历
        col.forEach(s -> {
            System.out.println(s.getName() + "-----" + s.getAge());
        });

    }

}
